package com.hooya.fa.eu.biz.dao.mapper;

import com.baomidou.dynamic.datasource.annotation.DS;
import com.hooya.fa.eu.api.bo.stk.BuyRecordBO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @Description stockList买进mapper
 * @Author : Zongz
 * @Copyright Copyright (c) 豪雅集团
 * @Create 2024/1/30
 * @Version 1.0.0
 */
@Mapper
public interface StkBuyMapper {

    /**
     * 根据时间获取进仓记录
     *
     * @param startDate 开始时间
     * @param endDate   结束时间
     * @return list
     */
    List<BuyRecordBO> getWarehousingListByDate(@Param("startDate") String startDate, @Param("endDate") String endDate);

	@DS("europe")
	List<BuyRecordBO> getWarehousingListByDateDaily(@Param("startDate") String startDate);

    /**
     * 根据时间获取转运记录
     *
     * @param startDate 开始时间
     * @param endDate   结束时间
     * @return list
     */
    List<BuyRecordBO> getZyListByDate(@Param("startDate") String startDate, @Param("endDate") String endDate);

	@DS("europe")
	List<BuyRecordBO> getZyListByDateDaily(@Param("startDate") String startDate, @Param("endDate") String endDate);

    /**
     * 根据时间获取其他转运记录
     *
     * @param startDate 开始时间
     * @param endDate   结束时间
     * @return list
     */
    List<BuyRecordBO> getOtherZyListByDate(@Param("startDate") String startDate, @Param("endDate") String endDate);

	@DS("europe")
	List<BuyRecordBO> getOtherZyListByDateDaily(@Param("startDate") String startDate, @Param("endDate") String endDate);

    /**
     * 根据时间和sheetNumber获取其他转运记录
     *
     * @param startDate       开始时间
     * @param endDate         结束时间
     * @param sheetNumberList sheetNumber
     * @return list
     */
    List<BuyRecordBO> getZyListByDateAndSheetNumber(@Param("startDate") String startDate,
                                                    @Param("endDate") String endDate,
                                                    @Param("sheetNumberList") List<String> sheetNumberList);

    /**
     * 根据时间获取需要补单得转运数据（未排除盘亏盘盈）
     *
     * @param startDate 开始时间
     * @param endDate   结束时间
     * @return list
     */
    List<BuyRecordBO> getSupplementZyList(@Param("startDate") String startDate, @Param("endDate") String endDate);

	@DS("europe")
	List<BuyRecordBO> getSupplementZyListDaily(@Param("startDate") String startDate, @Param("endDate") String endDate);
}
